// 封装posts的相关API函数
import request from "@/utils/request.js";

/**
 * 文章相关API接口集合
 */
export const postsAPI = {

    /**
     * 获取文章列表
     * @returns {Promise} 返回文章列表数据的Promise对象
     */
    getPostsList: () => request({
        url: '/posts',
        method: 'get'
    }),

    /**
     * 获取文章详情
     * @param {number|string} id - 文章ID
     * @returns {Promise} 返回指定文章详情数据的Promise对象
     */
    getPostDetail: (id) => request({
        url: '/posts/${id}',
        method: 'get'
    }),

    /**
     * 删除文章
     * @param {number|string} id - 要删除的文章ID
     * @returns {Promise} 返回删除操作结果的Promise对象
     */
    deletePost: (id) => request({
        url: '/posts/${id}',
        method: 'delete'
    }),

    /**
     * 添加新文章
     * @param {Object} data - 文章数据对象
     * @returns {Promise} 返回添加操作结果的Promise对象
     */
    addPost: (data) => request({
        url: '/posts',
        method: 'post',
        data
    }),

    /**
     * 更新文章
     * @param {number|string} id - 要更新的文章ID
     * @param {Object} data - 更新的文章数据对象
     * @returns {Promise} 返回更新操作结果的Promise对象
     */
    updatePost: (id, data) => request({
        url: '/posts/${id}',
        method: 'put',
        data
    })
}
